#ifndef TRIANGLE_H
#define TRIANGLE_H

#include "Objet.h"
#include "Point.h"
#include "Vecteur.h"
#include "Intersection.h"
#include "Rayon.h"


class Triangle : public Objet{

public :
	Triangle(const Point& p, const Vecteur& u, const Vecteur& v);
	Triangle(const Point& p1, const Point& p2, const Point& p3);
	bool intersection(Rayon &r, Intersection &i);
	inline Vecteur getNormale(){ return normal; };
	inline void setNormale(Vecteur v) { normal = Vecteur(v); normal.normer(); };
//	Couleur getCouleur(const Intersection& i) const;
	void planarTextureCoordonnees(float& u, float& v, const Point& centre, const Point& point, Matrice* rotation = NULL) const;

private : 
	Point sommet;
	Vecteur u, v;
	Vecteur normal;
};



#endif